home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1986-11-01 | 2.7 KB | 84 lines |
- 10 REM Basic functions for phase and frequency response
- 20 DEF FNPHLP1(W,WC,D) = -ATN(W/WC)
- 30 DEF FNPHHP1(W,WC,D) = ATN(WC/W)
- 40 DEF FNPHLP2(W,WC,D) = -ATN( D*W /(WC*(1-(W/WC)^2 ) ) ) + PI*(W>WC)
- 50 DEF FNPHHP2(W,WC,D) = ATN( D*WC/(W *(1-(WC/W)^2 ) ) ) - PI*(W<WC)
- 60 DEF FNAMLP1(W,WC,D) = 1 / SQR(1+(W/WC)^2)
- 70 DEF FNAMHP1(W,WC,D) = 1 / SQR(1+(WC/W)^2)
- 80 DEF FNAMLP2(W,WC,D) = 1 / SQR(1+(W/WC)^4+(D*D-2)*(W/WC)^2)
- 90 DEF FNAMHP2(W,WC,D) = 1 / SQR(1+(WC/W)^4+(D*D-2)*(WC/W)^2)
- 100 DEF FNDBV(AMP) = 20*LOG(AMP)/LOG(10)
- 110 DEF FNPHD(RAD) = 180*RAD/PI
- 120 PI = ATN(SQR(3))*3
- 130 DIM FREQT(31),AMPT(31)
- 140 REM driver characteristics
- 150 TITLE$ = "Morel MDM75 AR-3"
- 160 REM subscript of data frequencies with valid data
- 170 FIRST = 12 : LAST = 22
- 180 FREQT( 1)= 20: AMPT( 1)= -1
- 190 FREQT( 2)= 25: AMPT( 2)= -1
- 200 FREQT( 3)= 32: AMPT( 3)= -1
- 210 FREQT( 4)= 40: AMPT( 4)= -1
- 220 FREQT( 5)= 50: AMPT( 5)= -1
- 230 FREQT( 6)= 64: AMPT( 6)= -1
- 240 FREQT( 7)= 80: AMPT( 7)= -1
- 250 FREQT( 8)= 100: AMPT( 8)= -1
- 260 FREQT( 9)= 125: AMPT( 9)= -1
- 270 FREQT(10)= 160: AMPT(10)= -1
- 280 FREQT(11)= 200: AMPT(11)= -1
- 290 FREQT(12)= 250: AMPT(12)= -1
- 300 FREQT(13)= 320: AMPT(13)= -1
- 310 FREQT(14)= 400: AMPT(14)= -1
- 320 FREQT(15)= 500: AMPT(15)= -1
- 330 FREQT(16)= 640: AMPT(16)= -1
- 340 FREQT(17)= 800: AMPT(17)= +0
- 350 FREQT(18)= 1000: AMPT(18)= -1
- 360 FREQT(19)= 1250: AMPT(19)= -5
- 370 FREQT(20)= 1600: AMPT(20)= -7
- 380 FREQT(21)= 2000: AMPT(21)= -11
- 390 FREQT(22)= 2500: AMPT(22)= -15
- 400 FREQT(23)= 3200: AMPT(23)= -2
- 410 FREQT(24)= 4000: AMPT(24)= -2
- 420 FREQT(25)= 5000: AMPT(25)= -2
- 430 FREQT(26)= 6400: AMPT(26)= -5
- 440 FREQT(27)= 8000: AMPT(27)= -6
- 450 FREQT(28)=10000: AMPT(28)= -9
- 460 FREQT(29)=12500: AMPT(29)= -12
- 470 FREQT(30)=16000: AMPT(30)= -18
- 480 FREQT(31)=20000: AMPT(31)= -22
- 490 REM driver characteristics
- 500 FL = 0.1 :QL = 1.1
- 510 FH = 1200 :QH = 1.1
- 520 DBOFF = -1
- 530 REM
- 540 DL = 1/QL
- 550 DH = 1/QH
- 560 WL = FL*2*PI
- 570 WH = FH*2*PI
- 580 GOSUB 750
- 590 ERRSUM = 0
- 600 FOR FI = FIRST TO LAST
- 610 F = FREQT(FI)
- 620 REM IF F=1000! THEN GOSUB 640
- 630 W = F*2*PI
- 640 REM basic equations for response
- 650 THPHAS = FNPHHP2(W,WL,DL) + FNPHLP2(W,WH,DH)
- 660 THGAIN = FNAMHP2(W,WL,DL) * FNAMLP2(W,WH,DH)
- 680 THAMP = FNDBV(THGAIN) +DBOFF
- 681 ERRSUM = (AMPT(FI)-THAMP)^2 + ERRSUM
- 690 THPHAS=FNPHD(THPHAS)
- 700 PRINT USING "###### ####.## ####.## ####.##";F;AMPT(FI);THAMP;THPHAS
- 710 NEXT FI
- 720 PRINT "Error = ";ERRSUM
- 730 LIST 490-520
- 740 STOP
- 750 PRINT " "
- 760 PRINT "Crossover at:";FC;" Q:";Q
- 770 PRINT " Lower driver Fc:";FL;" Q:";QL
- 780 PRINT " Upper driver Fc:";FH;" Q:";QH
- 790 PRINT "Driver ID =";TITLE$
- 800 PRINT " "
- 810 PRINT " Freq actual theory phase"
- 820 PRINT "------ ------- -------- -------"
- 830 RETURN
-